"""
    类之间是可以继承的
    多个父类中，如果有同名的成员，那么默认以继承顺序（从左到右）为优先级。
即：先继承的保留，后继承的被覆盖
pass是占位语句，用来保证函数（方法）或类定义的完整性，表示无内容，空的意思

"""


# 单继承
# 定义 phone8 的类
class Phone8:
    IMEI = None  # 序列号
    producer = "ITCAST"  # 厂商

    def call_by_4g(self):
        print('4g通话')


# 定义phone12 的类 继承phone8的类  只需要在括号中写如父类的名字
class Phone12(Phone8):
    face_id = "10001"  # 面部识别ID

    def call_by_5g(self):
        print('5g通话')


# 继承之后可以使用和修改父类的属性和成员
phone12 = Phone12()
phone12.IMEI = '123321'
print(phone12.IMEI)


# 多继承
class Phone13:
    nfc_type = '最新nfc功能'

    def read_card(self):
        print("NFC读卡")

    def write_card(self):
        print("NFC写卡")


class Phone14:
    rc_type = "红外遥控"

    def control(self):
        print("红外遥控开启了")


# 这里有一个坑，比如 Phone12继承过Phone8了，所有在这继承的时候不能在继承Phone12了
class Myphone(Phone8, Phone13, Phone14):
    pass


myphone = Myphone()
myphone.call_by_4g()
# myphone.call_by_5g()   #  会报错
myphone.read_card()
myphone.write_card()
myphone.control()
